Copyright: Copyright © 1997 Applied Analytic Systems


Contents
The IDEOnly Unit for Delphi

© 1997 Applied Analytic Systems

IDEOnly is a compiled Delphi unit for use by component and dll developers who wish to make their components and utilities available for trial, but want to prevent their distribution without compensation.

This is not a component.  Source code for a sample component is provided to illustrate the procedure of using the unit within a developer's own component. Simply add "IDEOnly" to your new component or dll's "uses" clause, and call the InDelphiEnv function with an appropriate message which is displayed when the component is created or a dll's function is called outside the Delphi integrated development environment.

Important: This unit's routines uses several techniques to check for the presence of the Delphi environment; however, like any system, it is subject to hacking defeat.  As such, Applied Analytic Systems offers no guarantee of security.

If your component is very expensive, you are advised to use additional methods to protect your investment.  If, however, you market a $25 or $35 component, most users will find that paying your registration fee is much less trouble than trying to defeat the IDEOnly routines.

Also, due to the nature of this unit, and the fact that Applied Analytic Systems uses some of the routines in our components, source code is NOT available.


Ideonly Unit

About IDEOnly

Components

None

Types

No new types

Constants

No user accessible constants

Routines

InDelphiEnv

ParseMessage


InDelphiEnv routine

Unit

Ideonly

Declaration

function InDelphiEnv(iMessage: TStringList): boolean;

Description

This is the main routine for the IDEOnly unit.  It verifies that the user actually has a working copy of Delphi running while the program is being executed.  The input to this function is a StringList, the lines of which contain the error message to be displayed (as pictured below) when the user attempts to run an application which uses your component without Delphi running.

This function returns True if the Delphi environment is present, False otherwise.


ParseMessage routine

Unit

Ideonly

Declaration

function ParseMessage(List: TStringList):string;

Description

This function is used by the InDelphiEnv function to create the error message string used when the component is initialized outside the Delphi environment.